import request from './request'
import config from '@/config'

/**
 * 上传图片
 * @param {File} file 图片文件
 * @returns {Promise<string>} 返回图片URL
 */
export function uploadImage(file) {
  const formData = new FormData()
  formData.append('file', file)
  
  return request({
    url: config.upload.image,
    method: 'post',
    data: formData,
    headers: {
      'Content-Type': 'multipart/form-data'
    }
  })
}

/**
 * 检查文件是否为图片
 * @param {File} file 文件对象
 * @returns {boolean} 是否为图片
 */
export function isImage(file) {
  const validTypes = ['image/jpeg', 'image/png', 'image/gif']
  return validTypes.includes(file.type)
}

/**
 * 检查文件大小是否在限制范围内
 * @param {File} file 文件对象
 * @param {number} maxSize 最大大小（MB）
 * @returns {boolean} 是否在限制范围内
 */
export function checkFileSize(file, maxSize = 5) {
  const maxBytes = maxSize * 1024 * 1024
  return file.size <= maxBytes
} 